package com.jielin.handling.entity.material;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * @author WR
 * 电子卷宗一级目录
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class MaterialType {
    private String id;                    // varchar(32) NOT NULL 	电子卷宗一级目录字典
    private String materialtypename;    // varchar(20) NOT NULL		 一级类别名称
    private String casecode;            // varchar(50) NULL 		案件编号
    private String casename;            // varchar(50) NULL 		案件名称
    private String casesuspectid;        // varchar(50) NULL 		案件关联的嫌疑人id
    private String uploadpoliceid;        // varchar(32) NULL			上传民警id
    private String filetype;            // varchar(10) NULL			文件类型(1.音频材料2.视频材料3.卷宗材料)
    private int count;                // int(11) NULL				二级目录文件夹总数(默认为0)
    private int isRetract;            // int(11) NULL				第几次撤回={0:未撤回;1:撤回第一次}(默认未撤回)
    private String imgPath;            // varchar(255) NULL		图片路径
    private Date createDate;            // datetime NULL 			创建时间
    private Date modifyDate;            // datetime NULL 			最后一次修改时间

    private String caseSuspectName;        // varchar(50) NULL 		案件关联的嫌疑人name

    @Override
    public boolean equals(Object anObject) {
        if (this == anObject) {
            return true;
        }
        if (anObject instanceof MaterialType) {
            MaterialType anotherMaterialType = (MaterialType) anObject;
            if (anotherMaterialType.getCasecode().equals(casecode)
                    && anotherMaterialType.getCasesuspectid().equals(casesuspectid)
                    && anotherMaterialType.getUploadpoliceid().equals(uploadpoliceid)) {
                return true;
            }
        }
        return false;
    }
}
